In three-dimensional graphics systems, three-dimensional images are typically represented on a two-dimensional display. A three-dimensional model space is defined and sections of the model space assigned to the pixels of the screen. Each pixel displays the combined visual effects such as color, shading, and transparency of the three-dimensional model space that is contained within its viewing frustum. The surfaces of the objects within a three-dimensional model space are generally defined by or reduced to a collection of three-dimensional polygons. Each polygon may be assigned attributes such as intensity, color and opacity, which affect the resulting pixels to be displayed on the CRT screen. These attributes are generally specified at the vertices of the polygons.
The visual characteristics of a polygon may be enhanced by texture mapping polygons, which are generally much larger than would be required using the previous approach. This process is comparable to applying contact paper to the surface of a three-dimensional object and is a well-known and widely used technique in computer graphics. The texture is represented by a two-dimensional array of data, each data element in the array is called a texel and the array is called a texture map. The texture map can represent intensity, color, opacity and many other spatially varying properties. The two coordinate axes of the texture coordinate space are defined by rows of columns of the array and are typically designated by U and V coordinates. A polygon is associated with a specific region of a texture map by relating the vertices of the polygon with individual U,V locations in a texture map. The texels, which lie within the area of the texture map circumscribed by the polygon, are sampled to produce pixels for display.
Anisotropic filtering is a technique to improve the quality of texture mapping where the projection of a circular pixel onto the texture map is oblique. Conventional anisotropic filtering techniques, such as that disclosed in Microsoft's DirectX 9 reference rasterizer, are expensive to implement in hardware.